/**
 * Copyright &copy; 2012-2014 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.jims.master.modules.base.netHosptial.entity;

import com.fasterxml.jackson.annotation.JsonBackReference;
import com.jims.master.common.persistence.DataEntity;
import org.hibernate.validator.constraints.Length;

/**
 * 医院科室字典表Entity
 * @author qlx
 * @version 2016-06-24
 */
public class NetDeptDicts extends DataEntity<NetDeptDicts> {

	private static final long serialVersionUID = 1L;
	private String deptCode;		// 科室代码
	private String deptName;		// 科室名称
	private String deptAlis;		// 科室别名
	private String deptAttr;		// 科系属性
	private String deptOutpInp;		// 门诊住院科室标志如果是非末级科室不要填写该字段
	private String inputCode;		// 拼音输入码
	private String deptDevideAttr;		// 分类属性
	private String deptLocation;		// 科室位置
	private String deptOther;		// 用户自定标识
	private String deptStopFlag;		// 停用标志
	private String deptInfo;		// 科室简介
	private String hospitalId;		// 所属医院
	private NetDeptDicts parent;		// parent_id
	private String deptType;		// 科室类型，一般将科室分为：直接医疗类科室、医疗技术类科室、医疗辅助类科室、管理类科室、未纳入成本
	private String deptClass;		// 科室类别，一般为经营科室和其他
	private String endDept;		// 是否莫急科室

	public NetDeptDicts() {
		super();
	}

	public NetDeptDicts(String id){
		super(id);
	}

	@Length(min=0, max=9, message="科室代码长度必须介于 0 和 9 之间")
	public String getDeptCode() {
		return deptCode;
	}

	public void setDeptCode(String deptCode) {
		this.deptCode = deptCode;
	}
	
	@Length(min=0, max=40, message="科室名称长度必须介于 0 和 40 之间")
	public String getDeptName() {
		return deptName;
	}

	public void setDeptName(String deptName) {
		this.deptName = deptName;
	}
	
	@Length(min=0, max=40, message="科室别名长度必须介于 0 和 40 之间")
	public String getDeptAlis() {
		return deptAlis;
	}

	public void setDeptAlis(String deptAlis) {
		this.deptAlis = deptAlis;
	}
	
	@Length(min=0, max=2, message="科系属性长度必须介于 0 和 2 之间")
	public String getDeptAttr() {
		return deptAttr;
	}

	public void setDeptAttr(String deptAttr) {
		this.deptAttr = deptAttr;
	}
	
	@Length(min=0, max=1, message="门诊住院科室标志如果是非末级科室不要填写该字段长度必须介于 0 和 1 之间")
	public String getDeptOutpInp() {
		return deptOutpInp;
	}

	public void setDeptOutpInp(String deptOutpInp) {
		this.deptOutpInp = deptOutpInp;
	}
	
	@Override
    @Length(min=0, max=20, message="拼音输入码长度必须介于 0 和 20 之间")
	public String getInputCode() {
		return inputCode;
	}

	@Override
    public void setInputCode(String inputCode) {
		this.inputCode = inputCode;
	}
	
	@Length(min=0, max=24, message="分类属性长度必须介于 0 和 24 之间")
	public String getDeptDevideAttr() {
		return deptDevideAttr;
	}

	public void setDeptDevideAttr(String deptDevideAttr) {
		this.deptDevideAttr = deptDevideAttr;
	}
	
	@Length(min=0, max=80, message="科室位置长度必须介于 0 和 80 之间")
	public String getDeptLocation() {
		return deptLocation;
	}

	public void setDeptLocation(String deptLocation) {
		this.deptLocation = deptLocation;
	}
	
	@Length(min=0, max=50, message="用户自定标识长度必须介于 0 和 50 之间")
	public String getDeptOther() {
		return deptOther;
	}

	public void setDeptOther(String deptOther) {
		this.deptOther = deptOther;
	}
	
	@Length(min=0, max=1, message="停用标志长度必须介于 0 和 1 之间")
	public String getDeptStopFlag() {
		return deptStopFlag;
	}

	public void setDeptStopFlag(String deptStopFlag) {
		this.deptStopFlag = deptStopFlag;
	}
	
	@Length(min=0, max=500, message="科室简介长度必须介于 0 和 500 之间")
	public String getDeptInfo() {
		return deptInfo;
	}

	public void setDeptInfo(String deptInfo) {
		this.deptInfo = deptInfo;
	}
	
	@Length(min=0, max=64, message="所属医院长度必须介于 0 和 64 之间")
	public String getHospitalId() {
		return hospitalId;
	}

	public void setHospitalId(String hospitalId) {
		this.hospitalId = hospitalId;
	}
	
	@JsonBackReference
	public NetDeptDicts getParent() {
		return parent;
	}

	public void setParent(NetDeptDicts parent) {
		this.parent = parent;
	}
	
	@Length(min=0, max=50, message="科室类型，一般将科室分为：直接医疗类科室、医疗技术类科室、医疗辅助类科室、管理类科室、未纳入成本长度必须介于 0 和 50 之间")
	public String getDeptType() {
		return deptType;
	}

	public void setDeptType(String deptType) {
		this.deptType = deptType;
	}
	
	@Length(min=0, max=50, message="科室类别，一般为经营科室和其他长度必须介于 0 和 50 之间")
	public String getDeptClass() {
		return deptClass;
	}

	public void setDeptClass(String deptClass) {
		this.deptClass = deptClass;
	}
	
	@Length(min=0, max=1, message="是否莫急科室长度必须介于 0 和 1 之间")
	public String getEndDept() {
		return endDept;
	}

	public void setEndDept(String endDept) {
		this.endDept = endDept;
	}
	
}